#include<stdio.h>
#include<string.h>

struct  students{
	char name[4];
	int number;
	int age;
	int group;
	int grades;
}stu[10]={
	{"a",1,20,1,139},	//第一位学生
	{"b",2,21,1,149},	//第二位学生
	{"c",3,22,1,159},	//第三位学生
	{"d",4,23,1,179},	//第四位学生
	{"e",5,22,1,129},	//第五位学生
	{"f",6,23,2,169},	//第六位学生
	{"g",7,22,2,109},	//第七位学生
	{"h",8,21,2,149},	//第八位学生
	{"i",9,20,2,139},	//第九位学生
	{"j",10,20,2,119}	//第十位学生
};

void chengji(void){
    int n=sizeof(stu)/sizeof(stu[0]);
	int total=0,low=0,hight=0,lowone=0,hightone=0,k=1;
	for(int i=0;i<n;i++){	
		total+=stu[i].grades;	//累加求总成绩
		if(stu[i].grades <140){ //统计低于140分的人数
			low++;
		}
        if(stu[i].grades > stu[hightone].grades){	//统计最高分
			hightone=i;
		}
		if(stu[i].grades < stu[lowone].grades){	//统计最低分
			lowone=i;
		}
	}
	printf("全班总成绩为:%d,全班平均成绩为:%.1f,低于140分的人有%d人\n",total,(float)total/n,low);
	for(int i=0;i<n;i++){	//将相同分数的学生信息输出
		if(stu[i].grades == stu[hightone].grades ){
			printf("成绩最高的是%s,学号为%d,年龄为%d,所属组为%d组,成绩为%d\n",stu[i].name,stu[i].number,stu[i].age,stu[i].group,stu[i].grades);
		}
		if(stu[i].grades == stu[lowone].grades ){
			printf("成绩最低的是%s,学号为%d,年龄为%d,所属组为%d组,成绩为%d\n",stu[i].name,stu[i].number,stu[i].age,stu[i].group,stu[i].grades);
		}
	}
}

int main(void)
{	
	chengji();
	return 0;
}